package com.example.demo.SmartContact;

import java.math.BigInteger;
import java.util.Arrays;
import java.util.Collections;
import java.util.List;
import java.util.concurrent.Callable;
import org.web3j.abi.TypeReference;
import org.web3j.abi.datatypes.Address;
import org.web3j.abi.datatypes.Bool;
import org.web3j.abi.datatypes.Function;
import org.web3j.abi.datatypes.Type;
import org.web3j.abi.datatypes.Utf8String;
import org.web3j.abi.datatypes.generated.Uint256;
import org.web3j.crypto.Credentials;
import org.web3j.protocol.Web3j;
import org.web3j.protocol.core.RemoteCall;
import org.web3j.protocol.core.methods.response.TransactionReceipt;
import org.web3j.tuples.generated.Tuple2;
import org.web3j.tuples.generated.Tuple3;
import org.web3j.tx.Contract;
import org.web3j.tx.TransactionManager;
import org.web3j.tx.gas.ContractGasProvider;

/**
 * <p>Auto generated code.
 * <p><strong>Do not modify!</strong>
 * <p>Please use the <a href="https://docs.web3j.io/command_line.html">web3j command line tools</a>,
 * or the org.web3j.codegen.SolidityFunctionWrapperGenerator in the 
 * <a href="https://github.com/web3j/web3j/tree/master/codegen">codegen module</a> to update.
 *
 * <p>Generated with web3j version 3.6.0.
 */
public class KCliteWithToken2_sol_KCliteWithToken2 extends Contract {
    private static final String BINARY = "608060405234801561001057600080fd5b5033600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506120bf806100616000396000f3006080604052600436106100af576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806303a53595146100b457806321df0da71461018d57806362194f17146101a4578063667f86041461025357806380977f64146102e35780638887487d1461042857806392b0b12e146104b8578063c6ab0cdc146105fd578063c81ecc1f1461068d578063d571a956146106f6578063f8a8fd6d14610777575b600080fd5b3480156100c057600080fd5b506100df600480360381019080803590602001909291905050506107a2565b60405180806020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001828103825284818151815260200191508051906020019080838360005b83811015610151578082015181840152602081019050610136565b50505050905090810190601f16801561017e5780820380516001836020036101000a031916815260200191505b50935050505060405180910390f35b34801561019957600080fd5b506101a261088d565b005b3480156101b057600080fd5b50610251600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610b02565b005b34801561025f57600080fd5b50610268610be9565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156102a857808201518184015260208101905061028d565b50505050905090810190601f1680156102d55780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156102ef57600080fd5b5061030e60048036038101908080359060200190929190505050610e3a565b6040518080602001806020018473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001838103835286818151815260200191508051906020019080838360005b83811015610384578082015181840152602081019050610369565b50505050905090810190601f1680156103b15780820380516001836020036101000a031916815260200191505b50838103825285818151815260200191508051906020019080838360005b838110156103ea5780820151818401526020810190506103cf565b50505050905090810190601f1680156104175780820380516001836020036101000a031916815260200191505b509550505050505060405180910390f35b34801561043457600080fd5b5061043d610fc3565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561047d578082015181840152602081019050610462565b50505050905090810190601f1680156104aa5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156104c457600080fd5b506104e36004803603810190808035906020019092919050505061113f565b6040518080602001806020018473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001838103835286818151815260200191508051906020019080838360005b8381101561055957808201518184015260208101905061053e565b50505050905090810190601f1680156105865780820380516001836020036101000a031916815260200191505b50838103825285818151815260200191508051906020019080838360005b838110156105bf5780820151818401526020810190506105a4565b50505050905090810190601f1680156105ec5780820380516001836020036101000a031916815260200191505b509550505050505060405180910390f35b34801561060957600080fd5b506106126112c8565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610652578082015181840152602081019050610637565b50505050905090810190601f16801561067f5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561069957600080fd5b506106f4600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050611423565b005b34801561070257600080fd5b5061075d600480360381019080803590602001908201803590602001908080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050919291929050505061181c565b604051808215151515815260200191505060405180910390f35b34801561078357600080fd5b5061078c6119f4565b6040518082815260200191505060405180910390f35b6002818154811015156107b157fe5b9060005260206000209060020201600091509050806000018054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561085d5780601f106108325761010080835404028352916020019161085d565b820191906000526020600020905b81548152906001019060200180831161084057829003601f168201915b5050505050908060010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905082565b6000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614806108f057506108ef33611a00565b5b1515610964576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601d8152602001807f796f752068617665206e6f74206265656e20617574686f72697a65642e00000081525060200191505060405180910390fd5b600090505b600280549050811015610a38573373ffffffffffffffffffffffffffffffffffffffff1660028281548110151561099c57fe5b906000526020600020906002020160010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415610a2b576109f2611aaf565b600282815481101515610a0157fe5b90600052602060002090600202016000019080519060200190610a25929190611e07565b50610aff565b8080600101915050610969565b60026040805190810160405280610a4d611aaf565b81526020013373ffffffffffffffffffffffffffffffffffffffff16815250908060018154018082558091505090600182039060005260206000209060020201600090919290919091506000820151816000019080519060200190610ab3929190611e87565b5060208201518160010160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505050505b50565b60016060604051908101604052808481526020018381526020013373ffffffffffffffffffffffffffffffffffffffff16815250908060018154018082558091505090600182039060005260206000209060030201600090919290919091506000820151816000019080519060200190610b7d929190611e87565b506020820151816001019080519060200190610b9a929190611e87565b5060408201518160020160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505050505050565b6060806000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161480610c4f5750610c4e33611a00565b5b1515610cc3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601d8152602001807f796f752068617665206e6f74206265656e20617574686f72697a65642e00000081525060200191505060405180910390fd5b600080805490501415610d0d576040805190810160405280600f81526020017f6e6f20686f73707469616c2079657400000000000000000000000000000000008152509250610e35565b600090505b600080549050811015610e3157610de182600083815481101515610d3257fe5b90600052602060002090600302016001018054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610dd75780601f10610dac57610100808354040283529160200191610dd7565b820191906000526020600020905b815481529060010190602001808311610dba57829003601f168201915b5050505050611aec565b9150610e22826040805190810160405280600181526020017f2c00000000000000000000000000000000000000000000000000000000000000815250611aec565b91508080600101915050610d12565b8192505b505090565b600081815481101515610e4957fe5b9060005260206000209060030201600091509050806000018054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610ef55780601f10610eca57610100808354040283529160200191610ef5565b820191906000526020600020905b815481529060010190602001808311610ed857829003601f168201915b505050505090806001018054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610f935780601f10610f6857610100808354040283529160200191610f93565b820191906000526020600020905b815481529060010190602001808311610f7657829003601f168201915b5050505050908060020160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905083565b6060806000806001805490501415611012576040805190810160405280600b81526020017f6e6f205271737420796574000000000000000000000000000000000000000000815250925061113a565b600090505b600180549050811015611136576110e68260018381548110151561103757fe5b90600052602060002090600302016000018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156110dc5780601f106110b1576101008083540402835291602001916110dc565b820191906000526020600020905b8154815290600101906020018083116110bf57829003601f168201915b5050505050611aec565b9150611127826040805190810160405280600181526020017f2c00000000000000000000000000000000000000000000000000000000000000815250611aec565b91508080600101915050611017565b8192505b505090565b60018181548110151561114e57fe5b9060005260206000209060030201600091509050806000018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156111fa5780601f106111cf576101008083540402835291602001916111fa565b820191906000526020600020905b8154815290600101906020018083116111dd57829003601f168201915b505050505090806001018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156112985780601f1061126d57610100808354040283529160200191611298565b820191906000526020600020905b81548152906001019060200180831161127b57829003601f168201915b5050505050908060020160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905083565b606060008090505b60028054905081101561141e573373ffffffffffffffffffffffffffffffffffffffff1660028281548110151561130357fe5b906000526020600020906002020160010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614156114115760028181548110151561136057fe5b90600052602060002090600202016000018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156114055780601f106113da57610100808354040283529160200191611405565b820191906000526020600020905b8154815290600101906020018083116113e857829003601f168201915b5050505050915061141f565b80806001019150506112d0565b5b5090565b600080600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161480611487575061148633611a00565b5b15156114fb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600a8152602001807f20676574206f757420210000000000000000000000000000000000000000000081525060200191505060405180910390fd5b600091505b600180549050821015611816576115cf8360018481548110151561152057fe5b90600052602060002090600302016000018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156115c55780601f1061159a576101008083540402835291602001916115c5565b820191906000526020600020905b8154815290600101906020018083116115a857829003601f168201915b5050505050611cb7565b156118095760006001838154811015156115e557fe5b90600052602060002090600302019080600181540180825580915050906001820390600052602060002090600302016000909192909190915060008201816000019080546001816001161561010002031660029004611645929190611f07565b506001820181600101908054600181600116156101000203166002900461166d929190611f07565b506002820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff168160020160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505050508190505b60018080549050038110156117ee5760018082018154811015156116fc57fe5b906000526020600020906003020160018281548110151561171957fe5b90600052602060002090600302016000820181600001908054600181600116156101000203166002900461174e929190611f07565b5060018201816001019080546001816001161561010002031660029004611776929190611f07565b506002820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff168160020160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555090505080806001019150506116dc565b60018054809190600190036118039190611f8e565b50611817565b8180600101925050611500565b5b505050565b6000806000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161480611882575061188133611a00565b5b15156118f6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601d8152602001807f796f752068617665206e6f74206265656e20617574686f72697a65642e00000081525060200191505060405180910390fd5b6002805490509150600090505b818110156119e8576119cd60028281548110151561191d57fe5b90600052602060002090600202016000018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156119c25780601f10611997576101008083540402835291602001916119c2565b820191906000526020600020905b8154815290600101906020018083116119a557829003601f168201915b505050505085611cb7565b156119db57600192506119ed565b8080600101915050611903565b600092505b5050919050565b60008080549050905090565b600080600080805490509150600090505b81811015611aa3578373ffffffffffffffffffffffffffffffffffffffff16600082815481101515611a3f57fe5b906000526020600020906003020160020160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415611a965760019250611aa8565b8080600101915050611a11565b600092505b5050919050565b60606040805190810160405280600581526020017f6166386978000000000000000000000000000000000000000000000000000000815250905090565b60608060608060008087945086935083518551016040519080825280601f01601f191660200182016040528015611b325781602001602082028038833980820191505090505b50925060009150600090505b8451811015611bf1578481815181101515611b5557fe5b9060200101517f010000000000000000000000000000000000000000000000000000000000000090047f0100000000000000000000000000000000000000000000000000000000000000028383806001019450815181101515611bb457fe5b9060200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053508080600101915050611b3e565b600090505b8351811015611ca9578381815181101515611c0d57fe5b9060200101517f010000000000000000000000000000000000000000000000000000000000000090047f0100000000000000000000000000000000000000000000000000000000000000028383806001019450815181101515611c6c57fe5b9060200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053508080600101915050611bf6565b829550505050505092915050565b6000606080600085925084915081518351141515611cd85760009350611dfe565b600090505b8251811015611df9578181815181101515611cf457fe5b9060200101517f010000000000000000000000000000000000000000000000000000000000000090047f0100000000000000000000000000000000000000000000000000000000000000027effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19168382815181101515611d6f57fe5b9060200101517f010000000000000000000000000000000000000000000000000000000000000090047f0100000000000000000000000000000000000000000000000000000000000000027effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916141515611dec5760009350611dfe565b8080600101915050611cdd565b600193505b50505092915050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10611e4857805160ff1916838001178555611e76565b82800160010185558215611e76579182015b82811115611e75578251825591602001919060010190611e5a565b5b509050611e839190611fc0565b5090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10611ec857805160ff1916838001178555611ef6565b82800160010185558215611ef6579182015b82811115611ef5578251825591602001919060010190611eda565b5b509050611f039190611fc0565b5090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10611f405780548555611f7d565b82800160010185558215611f7d57600052602060002091601f016020900482015b82811115611f7c578254825591600101919060010190611f61565b5b509050611f8a9190611fc0565b5090565b815481835581811115611fbb57600302816003028360005260206000209182019101611fba9190611fe5565b5b505050565b611fe291905b80821115611fde576000816000905550600101611fc6565b5090565b90565b61204891905b808211156120445760008082016000612004919061204b565b600182016000612014919061204b565b6002820160006101000a81549073ffffffffffffffffffffffffffffffffffffffff021916905550600301611feb565b5090565b90565b50805460018160011615610100020316600290046000825580601f106120715750612090565b601f01602090049060005260206000209081019061208f9190611fc0565b5b505600a165627a7a7230582056e66e331bcf91a077d95536be315ec01de66c1ec25185e174f62d8ab888c1940029";

    public static final String FUNC_TOKENLIST = "TokenList";

    public static final String FUNC_GETTOKEN = "getToken";

    public static final String FUNC_SENDRQST = "sendRqst";

    public static final String FUNC_GETHPSTIP = "getHpstIp";

    public static final String FUNC_HSPTLIST = "HsptList";

    public static final String FUNC_GETRQSTLIST = "getRqstList";

    public static final String FUNC_RQSTLIST = "RqstList";

    public static final String FUNC_WHATISMYTOKEN = "whatIsMyToken";

    public static final String FUNC_SOLVERQST = "solveRqst";

    public static final String FUNC_TOKENVERIFICATION = "tokenVerification";

    public static final String FUNC_TEST = "test";

    @Deprecated
    protected KCliteWithToken2_sol_KCliteWithToken2(String contractAddress, Web3j web3j, Credentials credentials, BigInteger gasPrice, BigInteger gasLimit) {
        super(BINARY, contractAddress, web3j, credentials, gasPrice, gasLimit);
    }

    protected KCliteWithToken2_sol_KCliteWithToken2(String contractAddress, Web3j web3j, Credentials credentials, ContractGasProvider contractGasProvider) {
        super(BINARY, contractAddress, web3j, credentials, contractGasProvider);
    }

    @Deprecated
    protected KCliteWithToken2_sol_KCliteWithToken2(String contractAddress, Web3j web3j, TransactionManager transactionManager, BigInteger gasPrice, BigInteger gasLimit) {
        super(BINARY, contractAddress, web3j, transactionManager, gasPrice, gasLimit);
    }

    protected KCliteWithToken2_sol_KCliteWithToken2(String contractAddress, Web3j web3j, TransactionManager transactionManager, ContractGasProvider contractGasProvider) {
        super(BINARY, contractAddress, web3j, transactionManager, contractGasProvider);
    }

    public RemoteCall<Tuple2<Utf8String, Address>> TokenList(Uint256 param0) {
        final Function function = new Function(FUNC_TOKENLIST, 
                Arrays.<Type>asList(param0), 
                Arrays.<TypeReference<?>>asList(new TypeReference<Utf8String>() {}, new TypeReference<Address>() {}));
        return new RemoteCall<Tuple2<Utf8String, Address>>(
                new Callable<Tuple2<Utf8String, Address>>() {
                    @Override
                    public Tuple2<Utf8String, Address> call() throws Exception {
                        List<Type> results = executeCallMultipleValueReturn(function);
                        return new Tuple2<Utf8String, Address>(
                                (Utf8String) results.get(0), 
                                (Address) results.get(1));
                    }
                });
    }

    public RemoteCall<TransactionReceipt> getToken() {
        final Function function = new Function(
                FUNC_GETTOKEN, 
                Arrays.<Type>asList(), 
                Collections.<TypeReference<?>>emptyList());
        return executeRemoteCallTransaction(function);
    }

    public RemoteCall<TransactionReceipt> sendRqst(Utf8String _HsptName, Utf8String _Ip) {
        final Function function = new Function(
                FUNC_SENDRQST, 
                Arrays.<Type>asList(_HsptName, _Ip), 
                Collections.<TypeReference<?>>emptyList());
        return executeRemoteCallTransaction(function);
    }

    public RemoteCall<Utf8String> getHpstIp() {
        final Function function = new Function(FUNC_GETHPSTIP, 
                Arrays.<Type>asList(), 
                Arrays.<TypeReference<?>>asList(new TypeReference<Utf8String>() {}));
        return executeRemoteCallSingleValueReturn(function);
    }

    public RemoteCall<Tuple3<Utf8String, Utf8String, Address>> HsptList(Uint256 param0) {
        final Function function = new Function(FUNC_HSPTLIST, 
                Arrays.<Type>asList(param0), 
                Arrays.<TypeReference<?>>asList(new TypeReference<Utf8String>() {}, new TypeReference<Utf8String>() {}, new TypeReference<Address>() {}));
        return new RemoteCall<Tuple3<Utf8String, Utf8String, Address>>(
                new Callable<Tuple3<Utf8String, Utf8String, Address>>() {
                    @Override
                    public Tuple3<Utf8String, Utf8String, Address> call() throws Exception {
                        List<Type> results = executeCallMultipleValueReturn(function);
                        return new Tuple3<Utf8String, Utf8String, Address>(
                                (Utf8String) results.get(0), 
                                (Utf8String) results.get(1), 
                                (Address) results.get(2));
                    }
                });
    }

    public RemoteCall<Utf8String> getRqstList() {
        final Function function = new Function(FUNC_GETRQSTLIST, 
                Arrays.<Type>asList(), 
                Arrays.<TypeReference<?>>asList(new TypeReference<Utf8String>() {}));
        return executeRemoteCallSingleValueReturn(function);
    }

    public RemoteCall<Tuple3<Utf8String, Utf8String, Address>> RqstList(Uint256 param0) {
        final Function function = new Function(FUNC_RQSTLIST, 
                Arrays.<Type>asList(param0), 
                Arrays.<TypeReference<?>>asList(new TypeReference<Utf8String>() {}, new TypeReference<Utf8String>() {}, new TypeReference<Address>() {}));
        return new RemoteCall<Tuple3<Utf8String, Utf8String, Address>>(
                new Callable<Tuple3<Utf8String, Utf8String, Address>>() {
                    @Override
                    public Tuple3<Utf8String, Utf8String, Address> call() throws Exception {
                        List<Type> results = executeCallMultipleValueReturn(function);
                        return new Tuple3<Utf8String, Utf8String, Address>(
                                (Utf8String) results.get(0), 
                                (Utf8String) results.get(1), 
                                (Address) results.get(2));
                    }
                });
    }

    public RemoteCall<Utf8String> whatIsMyToken() {
        final Function function = new Function(FUNC_WHATISMYTOKEN, 
                Arrays.<Type>asList(), 
                Arrays.<TypeReference<?>>asList(new TypeReference<Utf8String>() {}));
        return executeRemoteCallSingleValueReturn(function);
    }

    public RemoteCall<TransactionReceipt> solveRqst(Utf8String _HsptName) {
        final Function function = new Function(
                FUNC_SOLVERQST, 
                Arrays.<Type>asList(_HsptName), 
                Collections.<TypeReference<?>>emptyList());
        return executeRemoteCallTransaction(function);
    }

    public RemoteCall<Bool> tokenVerification(Utf8String _token) {
        final Function function = new Function(FUNC_TOKENVERIFICATION, 
                Arrays.<Type>asList(_token), 
                Arrays.<TypeReference<?>>asList(new TypeReference<Bool>() {}));
        return executeRemoteCallSingleValueReturn(function);
    }

    public RemoteCall<Uint256> test() {
        final Function function = new Function(FUNC_TEST, 
                Arrays.<Type>asList(), 
                Arrays.<TypeReference<?>>asList(new TypeReference<Uint256>() {}));
        return executeRemoteCallSingleValueReturn(function);
    }

    public static RemoteCall<KCliteWithToken2_sol_KCliteWithToken2> deploy(Web3j web3j, Credentials credentials, ContractGasProvider contractGasProvider) {
        return deployRemoteCall(KCliteWithToken2_sol_KCliteWithToken2.class, web3j, credentials, contractGasProvider, BINARY, "");
    }

    public static RemoteCall<KCliteWithToken2_sol_KCliteWithToken2> deploy(Web3j web3j, TransactionManager transactionManager, ContractGasProvider contractGasProvider) {
        return deployRemoteCall(KCliteWithToken2_sol_KCliteWithToken2.class, web3j, transactionManager, contractGasProvider, BINARY, "");
    }

    @Deprecated
    public static RemoteCall<KCliteWithToken2_sol_KCliteWithToken2> deploy(Web3j web3j, Credentials credentials, BigInteger gasPrice, BigInteger gasLimit) {
        return deployRemoteCall(KCliteWithToken2_sol_KCliteWithToken2.class, web3j, credentials, gasPrice, gasLimit, BINARY, "");
    }

    @Deprecated
    public static RemoteCall<KCliteWithToken2_sol_KCliteWithToken2> deploy(Web3j web3j, TransactionManager transactionManager, BigInteger gasPrice, BigInteger gasLimit) {
        return deployRemoteCall(KCliteWithToken2_sol_KCliteWithToken2.class, web3j, transactionManager, gasPrice, gasLimit, BINARY, "");
    }

    @Deprecated
    public static KCliteWithToken2_sol_KCliteWithToken2 load(String contractAddress, Web3j web3j, Credentials credentials, BigInteger gasPrice, BigInteger gasLimit) {
        return new KCliteWithToken2_sol_KCliteWithToken2(contractAddress, web3j, credentials, gasPrice, gasLimit);
    }

    @Deprecated
    public static KCliteWithToken2_sol_KCliteWithToken2 load(String contractAddress, Web3j web3j, TransactionManager transactionManager, BigInteger gasPrice, BigInteger gasLimit) {
        return new KCliteWithToken2_sol_KCliteWithToken2(contractAddress, web3j, transactionManager, gasPrice, gasLimit);
    }

    public static KCliteWithToken2_sol_KCliteWithToken2 load(String contractAddress, Web3j web3j, Credentials credentials, ContractGasProvider contractGasProvider) {
        return new KCliteWithToken2_sol_KCliteWithToken2(contractAddress, web3j, credentials, contractGasProvider);
    }

    public static KCliteWithToken2_sol_KCliteWithToken2 load(String contractAddress, Web3j web3j, TransactionManager transactionManager, ContractGasProvider contractGasProvider) {
        return new KCliteWithToken2_sol_KCliteWithToken2(contractAddress, web3j, transactionManager, contractGasProvider);
    }
}
